//打印杨辉三角前10行
public class Program33 {
    //杨辉三角
    public static void main(String[] args) {
        //生成前10行杨辉三角，先创建好一个10行的二维数组
        int[][] a = new int[10][];
        //利用for循环初始化每一行的数组，并且将头尾数值设置为1
        for (int i = 0; i < a.length; i++) {
            a[i] = new int[i+1];
            a[i][0] = 1;
            a[i][i] = 1;
        }
        //从第三行开始，除去头尾元素，中间元素均为上一行同列与前一列元素之和，利用两层for循环生成杨辉三角
        for (int i = 2; i < a.length; i++) {
            for (int j = 1; j < a[i].length - 1; j++) {
                a[i][j] = a[i-1][j-1] + a[i-1][j];
            }
        }
        for (int i = 0; i < a.length; i++) {
            for (int j = a.length - i - 1; j > 0 ; j--) {
                System.out.print(" ");
            }
            for (int x : a[i]){
                System.out.print(x+" ");
            }
            System.out.println();
        }
    }
}
